1
GPU 性能的記憶體導向本質
AI024Lesson 5
00:00

在 GPU 加速中,我們必須拋棄「計算優先」的思維模式。現代性能由 記憶體管理:主機(CPU)與裝置(GPU)之間資料配置、同步與最佳化的協調。

1. 記憶體與計算的差異

儘管 GPU 的算術吞吐量($TFLOPS$)已大幅躍升,但記憶體頻寬($GB/s$)卻增長緩慢得多。這造成了一個差距,使執行單元經常處於「飢餓」狀態,等待來自顯示記憶體(VRAM)的資料到達。因此, GPU 程式設計通常就是記憶體程式設計

2. 屋頂模型

此模型可視化 運算強度 (FLOPs/Byte)與效能之間的關係。應用程式通常分為兩類:

  • 記憶體受限: 受頻寬限制(陡峭的斜坡)。
  • 計算受限: 受峰值 TFLOPS 限制(水平的天花板)。
運算強度(FLOPs/Byte)效能(GFLOPS)記憶體受限計算受限

3. 資料移動的成本

主要的效能瓶頸很少是數學運算本身;而是透過 PCIe 總線或從 HBM 移動一個位元組所帶來的延遲與能源成本。高性能程式會優先考慮資料的駐留位置,並最小化主機與裝置之間的資料傳輸。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>